package org.acsis.covoiturage.frontend.modemockl;

import java.util.Date;
import java.util.Set;

import org.acsis.covoiturage.shared.IClient;
import org.acsis.covoiturage.shared.ILieu;
import org.acsis.covoiturage.shared.ITrajet;

public class TrajetMock implements ITrajet {

	ILieu depart;
	ILieu arrivee;
	Date dateDepart;
	IClient conducteur;
	int idTrajet;
	short nbPlace;
	double prix;
	Set<IClient> cv;
	
	public TrajetMock(ILieu depart, ILieu arrivee, 
			Date dateDepart, IClient conducteur,
			int idTrajet, short nbPlace,
			double prix){
		this(depart, arrivee, dateDepart, conducteur, idTrajet, nbPlace, prix, null);
	}
	
	public TrajetMock(ILieu depart, ILieu arrivee, 
						Date dateDepart, IClient conducteur,
						int idTrajet, short nbPlace,
						double prix, Set<IClient> cv) {
		this.depart = depart;
		this.arrivee = arrivee;
		this.dateDepart = dateDepart;
		this.conducteur = conducteur;
		this.idTrajet = idTrajet;
		this.nbPlace = nbPlace;
		this.prix = prix;
		this.cv = cv;
	}
	
	@Override
	public ILieu getArrivee() {
		return new LieuMock(2, "Alger");
	}

	@Override
	public IClient getConducteur() {
		return conducteur;
	}

	@Override
	public Set<IClient> getCovoitureurs() {
		return cv;
	}

	@Override
	public Date getDateDepart() {
		return dateDepart;
	}

	@Override
	public ILieu getDepart() {
		return depart;
	}

	@Override
	public int getIdTrajet() {
		return idTrajet;
	}

	@Override
	public short getPlaceRestantes() {
		return nbPlace;
	}

	@Override
	public double getPrixPlace() {
		return prix;
	}

}
